package cn.wgx.modules.sys.entity;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class SysMenuExample {
    /**
     *
     * @mbg.generated Tue Mar 31 14:44:47 CST 2020
     */
    protected String orderByClause;

    /**
     *
     * @mbg.generated Tue Mar 31 14:44:47 CST 2020
     */
    protected boolean distinct;

    /**
     *
     * @mbg.generated Tue Mar 31 14:44:47 CST 2020
     */
    protected List<Criteria> oredCriteria;

    /**
     *
     * @mbg.generated Tue Mar 31 14:44:47 CST 2020
     */
    public SysMenuExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    /**
     *
     * @mbg.generated Tue Mar 31 14:44:47 CST 2020
     */
    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    /**
     *
     * @mbg.generated Tue Mar 31 14:44:47 CST 2020
     */
    public String getOrderByClause() {
        return orderByClause;
    }

    /**
     *
     * @mbg.generated Tue Mar 31 14:44:47 CST 2020
     */
    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    /**
     *
     * @mbg.generated Tue Mar 31 14:44:47 CST 2020
     */
    public boolean isDistinct() {
        return distinct;
    }

    /**
     *
     * @mbg.generated Tue Mar 31 14:44:47 CST 2020
     */
    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    /**
     *
     * @mbg.generated Tue Mar 31 14:44:47 CST 2020
     */
    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    /**
     *
     * @mbg.generated Tue Mar 31 14:44:47 CST 2020
     */
    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    /**
     *
     * @mbg.generated Tue Mar 31 14:44:47 CST 2020
     */
    public SysMenuExample orderBy(String orderByClause) {
        this.setOrderByClause(orderByClause);
        return this;
    }

    /**
     *
     * @mbg.generated Tue Mar 31 14:44:47 CST 2020
     */
    public SysMenuExample orderBy(String ... orderByClauses) {
        StringBuffer sb = new StringBuffer();
        for (int i = 0; i < orderByClauses.length; i++) {
            sb.append(orderByClauses[i]);
            if (i < orderByClauses.length - 1) {
                sb.append(" , ");
            }
        }
        this.setOrderByClause(sb.toString());
        return this;
    }

    /**
     *
     * @mbg.generated Tue Mar 31 14:44:47 CST 2020
     */
    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    /**
     *
     * @mbg.generated Tue Mar 31 14:44:47 CST 2020
     */
    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria(this);
        return criteria;
    }

    /**
     *
     * @mbg.generated Tue Mar 31 14:44:47 CST 2020
     */
    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    /**
     *
     * @mbg.generated Tue Mar 31 14:44:47 CST 2020
     */
    public static Criteria newAndCreateCriteria() {
        SysMenuExample example = new SysMenuExample();
        return example.createCriteria();
    }

    /**
     *
     * @mbg.generated Tue Mar 31 14:44:47 CST 2020
     */
    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andMenu_idIsNull() {
            addCriterion("t.menu_id is null");
            return (Criteria) this;
        }

        public Criteria andMenu_idIsNotNull() {
            addCriterion("t.menu_id is not null");
            return (Criteria) this;
        }

        public Criteria andMenu_idEqualTo(Integer value) {
            addCriterion("t.menu_id =", value, "menu_id");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andMenu_idEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.menu_id = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andMenu_idNotEqualTo(Integer value) {
            addCriterion("t.menu_id <>", value, "menu_id");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andMenu_idNotEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.menu_id <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andMenu_idGreaterThan(Integer value) {
            addCriterion("t.menu_id >", value, "menu_id");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andMenu_idGreaterThanColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.menu_id > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andMenu_idGreaterThanOrEqualTo(Integer value) {
            addCriterion("t.menu_id >=", value, "menu_id");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andMenu_idGreaterThanOrEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.menu_id >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andMenu_idLessThan(Integer value) {
            addCriterion("t.menu_id <", value, "menu_id");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andMenu_idLessThanColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.menu_id < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andMenu_idLessThanOrEqualTo(Integer value) {
            addCriterion("t.menu_id <=", value, "menu_id");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andMenu_idLessThanOrEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.menu_id <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andMenu_idIn(List<Integer> values) {
            addCriterion("t.menu_id in", values, "menu_id");
            return (Criteria) this;
        }

        public Criteria andMenu_idNotIn(List<Integer> values) {
            addCriterion("t.menu_id not in", values, "menu_id");
            return (Criteria) this;
        }

        public Criteria andMenu_idBetween(Integer value1, Integer value2) {
            addCriterion("t.menu_id between", value1, value2, "menu_id");
            return (Criteria) this;
        }

        public Criteria andMenu_idNotBetween(Integer value1, Integer value2) {
            addCriterion("t.menu_id not between", value1, value2, "menu_id");
            return (Criteria) this;
        }

        public Criteria andTopPidIsNull() {
            addCriterion("t.topPid is null");
            return (Criteria) this;
        }

        public Criteria andTopPidIsNotNull() {
            addCriterion("t.topPid is not null");
            return (Criteria) this;
        }

        public Criteria andTopPidEqualTo(Integer value) {
            addCriterion("t.topPid =", value, "topPid");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andTopPidEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.topPid = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andTopPidNotEqualTo(Integer value) {
            addCriterion("t.topPid <>", value, "topPid");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andTopPidNotEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.topPid <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andTopPidGreaterThan(Integer value) {
            addCriterion("t.topPid >", value, "topPid");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andTopPidGreaterThanColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.topPid > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andTopPidGreaterThanOrEqualTo(Integer value) {
            addCriterion("t.topPid >=", value, "topPid");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andTopPidGreaterThanOrEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.topPid >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andTopPidLessThan(Integer value) {
            addCriterion("t.topPid <", value, "topPid");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andTopPidLessThanColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.topPid < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andTopPidLessThanOrEqualTo(Integer value) {
            addCriterion("t.topPid <=", value, "topPid");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andTopPidLessThanOrEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.topPid <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andTopPidIn(List<Integer> values) {
            addCriterion("t.topPid in", values, "topPid");
            return (Criteria) this;
        }

        public Criteria andTopPidNotIn(List<Integer> values) {
            addCriterion("t.topPid not in", values, "topPid");
            return (Criteria) this;
        }

        public Criteria andTopPidBetween(Integer value1, Integer value2) {
            addCriterion("t.topPid between", value1, value2, "topPid");
            return (Criteria) this;
        }

        public Criteria andTopPidNotBetween(Integer value1, Integer value2) {
            addCriterion("t.topPid not between", value1, value2, "topPid");
            return (Criteria) this;
        }

        public Criteria andPidIsNull() {
            addCriterion("t.pid is null");
            return (Criteria) this;
        }

        public Criteria andPidIsNotNull() {
            addCriterion("t.pid is not null");
            return (Criteria) this;
        }

        public Criteria andPidEqualTo(Integer value) {
            addCriterion("t.pid =", value, "pid");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andPidEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.pid = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andPidNotEqualTo(Integer value) {
            addCriterion("t.pid <>", value, "pid");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andPidNotEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.pid <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andPidGreaterThan(Integer value) {
            addCriterion("t.pid >", value, "pid");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andPidGreaterThanColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.pid > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andPidGreaterThanOrEqualTo(Integer value) {
            addCriterion("t.pid >=", value, "pid");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andPidGreaterThanOrEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.pid >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andPidLessThan(Integer value) {
            addCriterion("t.pid <", value, "pid");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andPidLessThanColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.pid < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andPidLessThanOrEqualTo(Integer value) {
            addCriterion("t.pid <=", value, "pid");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andPidLessThanOrEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.pid <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andPidIn(List<Integer> values) {
            addCriterion("t.pid in", values, "pid");
            return (Criteria) this;
        }

        public Criteria andPidNotIn(List<Integer> values) {
            addCriterion("t.pid not in", values, "pid");
            return (Criteria) this;
        }

        public Criteria andPidBetween(Integer value1, Integer value2) {
            addCriterion("t.pid between", value1, value2, "pid");
            return (Criteria) this;
        }

        public Criteria andPidNotBetween(Integer value1, Integer value2) {
            addCriterion("t.pid not between", value1, value2, "pid");
            return (Criteria) this;
        }

        public Criteria andTitleIsNull() {
            addCriterion("t.title is null");
            return (Criteria) this;
        }

        public Criteria andTitleIsNotNull() {
            addCriterion("t.title is not null");
            return (Criteria) this;
        }

        public Criteria andTitleEqualTo(String value) {
            addCriterion("t.title =", value, "title");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andTitleEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.title = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andTitleNotEqualTo(String value) {
            addCriterion("t.title <>", value, "title");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andTitleNotEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.title <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andTitleGreaterThan(String value) {
            addCriterion("t.title >", value, "title");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andTitleGreaterThanColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.title > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andTitleGreaterThanOrEqualTo(String value) {
            addCriterion("t.title >=", value, "title");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andTitleGreaterThanOrEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.title >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andTitleLessThan(String value) {
            addCriterion("t.title <", value, "title");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andTitleLessThanColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.title < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andTitleLessThanOrEqualTo(String value) {
            addCriterion("t.title <=", value, "title");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andTitleLessThanOrEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.title <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andTitleLike(String value) {
            addCriterion("t.title like", value, "title");
            return (Criteria) this;
        }

        public Criteria andTitleNotLike(String value) {
            addCriterion("t.title not like", value, "title");
            return (Criteria) this;
        }

        public Criteria andTitleIn(List<String> values) {
            addCriterion("t.title in", values, "title");
            return (Criteria) this;
        }

        public Criteria andTitleNotIn(List<String> values) {
            addCriterion("t.title not in", values, "title");
            return (Criteria) this;
        }

        public Criteria andTitleBetween(String value1, String value2) {
            addCriterion("t.title between", value1, value2, "title");
            return (Criteria) this;
        }

        public Criteria andTitleNotBetween(String value1, String value2) {
            addCriterion("t.title not between", value1, value2, "title");
            return (Criteria) this;
        }

        public Criteria andMenuKeyIsNull() {
            addCriterion("t.menuKey is null");
            return (Criteria) this;
        }

        public Criteria andMenuKeyIsNotNull() {
            addCriterion("t.menuKey is not null");
            return (Criteria) this;
        }

        public Criteria andMenuKeyEqualTo(String value) {
            addCriterion("t.menuKey =", value, "menuKey");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andMenuKeyEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.menuKey = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andMenuKeyNotEqualTo(String value) {
            addCriterion("t.menuKey <>", value, "menuKey");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andMenuKeyNotEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.menuKey <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andMenuKeyGreaterThan(String value) {
            addCriterion("t.menuKey >", value, "menuKey");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andMenuKeyGreaterThanColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.menuKey > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andMenuKeyGreaterThanOrEqualTo(String value) {
            addCriterion("t.menuKey >=", value, "menuKey");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andMenuKeyGreaterThanOrEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.menuKey >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andMenuKeyLessThan(String value) {
            addCriterion("t.menuKey <", value, "menuKey");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andMenuKeyLessThanColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.menuKey < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andMenuKeyLessThanOrEqualTo(String value) {
            addCriterion("t.menuKey <=", value, "menuKey");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andMenuKeyLessThanOrEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.menuKey <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andMenuKeyLike(String value) {
            addCriterion("t.menuKey like", value, "menuKey");
            return (Criteria) this;
        }

        public Criteria andMenuKeyNotLike(String value) {
            addCriterion("t.menuKey not like", value, "menuKey");
            return (Criteria) this;
        }

        public Criteria andMenuKeyIn(List<String> values) {
            addCriterion("t.menuKey in", values, "menuKey");
            return (Criteria) this;
        }

        public Criteria andMenuKeyNotIn(List<String> values) {
            addCriterion("t.menuKey not in", values, "menuKey");
            return (Criteria) this;
        }

        public Criteria andMenuKeyBetween(String value1, String value2) {
            addCriterion("t.menuKey between", value1, value2, "menuKey");
            return (Criteria) this;
        }

        public Criteria andMenuKeyNotBetween(String value1, String value2) {
            addCriterion("t.menuKey not between", value1, value2, "menuKey");
            return (Criteria) this;
        }

        public Criteria andTypeIsNull() {
            addCriterion("t.type is null");
            return (Criteria) this;
        }

        public Criteria andTypeIsNotNull() {
            addCriterion("t.type is not null");
            return (Criteria) this;
        }

        public Criteria andTypeEqualTo(Integer value) {
            addCriterion("t.type =", value, "type");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andTypeEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.type = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andTypeNotEqualTo(Integer value) {
            addCriterion("t.type <>", value, "type");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andTypeNotEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.type <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThan(Integer value) {
            addCriterion("t.type >", value, "type");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andTypeGreaterThanColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.type > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("t.type >=", value, "type");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andTypeGreaterThanOrEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.type >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andTypeLessThan(Integer value) {
            addCriterion("t.type <", value, "type");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andTypeLessThanColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.type < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andTypeLessThanOrEqualTo(Integer value) {
            addCriterion("t.type <=", value, "type");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andTypeLessThanOrEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.type <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andTypeIn(List<Integer> values) {
            addCriterion("t.type in", values, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotIn(List<Integer> values) {
            addCriterion("t.type not in", values, "type");
            return (Criteria) this;
        }

        public Criteria andTypeBetween(Integer value1, Integer value2) {
            addCriterion("t.type between", value1, value2, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("t.type not between", value1, value2, "type");
            return (Criteria) this;
        }

        public Criteria andSortIsNull() {
            addCriterion("t.sort is null");
            return (Criteria) this;
        }

        public Criteria andSortIsNotNull() {
            addCriterion("t.sort is not null");
            return (Criteria) this;
        }

        public Criteria andSortEqualTo(Integer value) {
            addCriterion("t.sort =", value, "sort");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andSortEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.sort = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andSortNotEqualTo(Integer value) {
            addCriterion("t.sort <>", value, "sort");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andSortNotEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.sort <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andSortGreaterThan(Integer value) {
            addCriterion("t.sort >", value, "sort");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andSortGreaterThanColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.sort > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andSortGreaterThanOrEqualTo(Integer value) {
            addCriterion("t.sort >=", value, "sort");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andSortGreaterThanOrEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.sort >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andSortLessThan(Integer value) {
            addCriterion("t.sort <", value, "sort");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andSortLessThanColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.sort < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andSortLessThanOrEqualTo(Integer value) {
            addCriterion("t.sort <=", value, "sort");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andSortLessThanOrEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.sort <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andSortIn(List<Integer> values) {
            addCriterion("t.sort in", values, "sort");
            return (Criteria) this;
        }

        public Criteria andSortNotIn(List<Integer> values) {
            addCriterion("t.sort not in", values, "sort");
            return (Criteria) this;
        }

        public Criteria andSortBetween(Integer value1, Integer value2) {
            addCriterion("t.sort between", value1, value2, "sort");
            return (Criteria) this;
        }

        public Criteria andSortNotBetween(Integer value1, Integer value2) {
            addCriterion("t.sort not between", value1, value2, "sort");
            return (Criteria) this;
        }

        public Criteria andStatusIsNull() {
            addCriterion("t.status is null");
            return (Criteria) this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion("t.status is not null");
            return (Criteria) this;
        }

        public Criteria andStatusEqualTo(Integer value) {
            addCriterion("t.status =", value, "status");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andStatusEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.status = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andStatusNotEqualTo(Integer value) {
            addCriterion("t.status <>", value, "status");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andStatusNotEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.status <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThan(Integer value) {
            addCriterion("t.status >", value, "status");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andStatusGreaterThanColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.status > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("t.status >=", value, "status");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andStatusGreaterThanOrEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.status >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andStatusLessThan(Integer value) {
            addCriterion("t.status <", value, "status");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andStatusLessThanColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.status < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andStatusLessThanOrEqualTo(Integer value) {
            addCriterion("t.status <=", value, "status");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andStatusLessThanOrEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.status <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andStatusIn(List<Integer> values) {
            addCriterion("t.status in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotIn(List<Integer> values) {
            addCriterion("t.status not in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusBetween(Integer value1, Integer value2) {
            addCriterion("t.status between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("t.status not between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andRemarkIsNull() {
            addCriterion("t.remark is null");
            return (Criteria) this;
        }

        public Criteria andRemarkIsNotNull() {
            addCriterion("t.remark is not null");
            return (Criteria) this;
        }

        public Criteria andRemarkEqualTo(String value) {
            addCriterion("t.remark =", value, "remark");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andRemarkEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.remark = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andRemarkNotEqualTo(String value) {
            addCriterion("t.remark <>", value, "remark");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andRemarkNotEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.remark <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andRemarkGreaterThan(String value) {
            addCriterion("t.remark >", value, "remark");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andRemarkGreaterThanColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.remark > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andRemarkGreaterThanOrEqualTo(String value) {
            addCriterion("t.remark >=", value, "remark");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andRemarkGreaterThanOrEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.remark >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andRemarkLessThan(String value) {
            addCriterion("t.remark <", value, "remark");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andRemarkLessThanColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.remark < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andRemarkLessThanOrEqualTo(String value) {
            addCriterion("t.remark <=", value, "remark");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andRemarkLessThanOrEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.remark <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andRemarkLike(String value) {
            addCriterion("t.remark like", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotLike(String value) {
            addCriterion("t.remark not like", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkIn(List<String> values) {
            addCriterion("t.remark in", values, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotIn(List<String> values) {
            addCriterion("t.remark not in", values, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkBetween(String value1, String value2) {
            addCriterion("t.remark between", value1, value2, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotBetween(String value1, String value2) {
            addCriterion("t.remark not between", value1, value2, "remark");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdIsNull() {
            addCriterion("t.createUserId is null");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdIsNotNull() {
            addCriterion("t.createUserId is not null");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdEqualTo(Integer value) {
            addCriterion("t.createUserId =", value, "createUserId");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andCreateUserIdEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.createUserId = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCreateUserIdNotEqualTo(Integer value) {
            addCriterion("t.createUserId <>", value, "createUserId");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andCreateUserIdNotEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.createUserId <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCreateUserIdGreaterThan(Integer value) {
            addCriterion("t.createUserId >", value, "createUserId");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andCreateUserIdGreaterThanColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.createUserId > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCreateUserIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("t.createUserId >=", value, "createUserId");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andCreateUserIdGreaterThanOrEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.createUserId >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCreateUserIdLessThan(Integer value) {
            addCriterion("t.createUserId <", value, "createUserId");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andCreateUserIdLessThanColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.createUserId < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCreateUserIdLessThanOrEqualTo(Integer value) {
            addCriterion("t.createUserId <=", value, "createUserId");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andCreateUserIdLessThanOrEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.createUserId <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCreateUserIdIn(List<Integer> values) {
            addCriterion("t.createUserId in", values, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdNotIn(List<Integer> values) {
            addCriterion("t.createUserId not in", values, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdBetween(Integer value1, Integer value2) {
            addCriterion("t.createUserId between", value1, value2, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdNotBetween(Integer value1, Integer value2) {
            addCriterion("t.createUserId not between", value1, value2, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateDateIsNull() {
            addCriterion("t.createDate is null");
            return (Criteria) this;
        }

        public Criteria andCreateDateIsNotNull() {
            addCriterion("t.createDate is not null");
            return (Criteria) this;
        }

        public Criteria andCreateDateEqualTo(Date value) {
            addCriterion("t.createDate =", value, "createDate");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andCreateDateEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.createDate = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCreateDateNotEqualTo(Date value) {
            addCriterion("t.createDate <>", value, "createDate");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andCreateDateNotEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.createDate <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCreateDateGreaterThan(Date value) {
            addCriterion("t.createDate >", value, "createDate");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andCreateDateGreaterThanColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.createDate > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCreateDateGreaterThanOrEqualTo(Date value) {
            addCriterion("t.createDate >=", value, "createDate");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andCreateDateGreaterThanOrEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.createDate >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCreateDateLessThan(Date value) {
            addCriterion("t.createDate <", value, "createDate");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andCreateDateLessThanColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.createDate < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCreateDateLessThanOrEqualTo(Date value) {
            addCriterion("t.createDate <=", value, "createDate");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andCreateDateLessThanOrEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.createDate <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCreateDateIn(List<Date> values) {
            addCriterion("t.createDate in", values, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateNotIn(List<Date> values) {
            addCriterion("t.createDate not in", values, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateBetween(Date value1, Date value2) {
            addCriterion("t.createDate between", value1, value2, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateNotBetween(Date value1, Date value2) {
            addCriterion("t.createDate not between", value1, value2, "createDate");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdIsNull() {
            addCriterion("t.updateUserId is null");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdIsNotNull() {
            addCriterion("t.updateUserId is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdEqualTo(Integer value) {
            addCriterion("t.updateUserId =", value, "updateUserId");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andUpdateUserIdEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.updateUserId = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdNotEqualTo(Integer value) {
            addCriterion("t.updateUserId <>", value, "updateUserId");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andUpdateUserIdNotEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.updateUserId <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdGreaterThan(Integer value) {
            addCriterion("t.updateUserId >", value, "updateUserId");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andUpdateUserIdGreaterThanColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.updateUserId > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("t.updateUserId >=", value, "updateUserId");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andUpdateUserIdGreaterThanOrEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.updateUserId >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdLessThan(Integer value) {
            addCriterion("t.updateUserId <", value, "updateUserId");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andUpdateUserIdLessThanColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.updateUserId < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdLessThanOrEqualTo(Integer value) {
            addCriterion("t.updateUserId <=", value, "updateUserId");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andUpdateUserIdLessThanOrEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.updateUserId <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdIn(List<Integer> values) {
            addCriterion("t.updateUserId in", values, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdNotIn(List<Integer> values) {
            addCriterion("t.updateUserId not in", values, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdBetween(Integer value1, Integer value2) {
            addCriterion("t.updateUserId between", value1, value2, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdNotBetween(Integer value1, Integer value2) {
            addCriterion("t.updateUserId not between", value1, value2, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateDateIsNull() {
            addCriterion("t.updateDate is null");
            return (Criteria) this;
        }

        public Criteria andUpdateDateIsNotNull() {
            addCriterion("t.updateDate is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateDateEqualTo(Date value) {
            addCriterion("t.updateDate =", value, "updateDate");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andUpdateDateEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.updateDate = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andUpdateDateNotEqualTo(Date value) {
            addCriterion("t.updateDate <>", value, "updateDate");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andUpdateDateNotEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.updateDate <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andUpdateDateGreaterThan(Date value) {
            addCriterion("t.updateDate >", value, "updateDate");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andUpdateDateGreaterThanColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.updateDate > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andUpdateDateGreaterThanOrEqualTo(Date value) {
            addCriterion("t.updateDate >=", value, "updateDate");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andUpdateDateGreaterThanOrEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.updateDate >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andUpdateDateLessThan(Date value) {
            addCriterion("t.updateDate <", value, "updateDate");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andUpdateDateLessThanColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.updateDate < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andUpdateDateLessThanOrEqualTo(Date value) {
            addCriterion("t.updateDate <=", value, "updateDate");
            return (Criteria) this;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andUpdateDateLessThanOrEqualToColumn(SysMenu.Column column) {
            addCriterion(new StringBuilder("t.updateDate <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andUpdateDateIn(List<Date> values) {
            addCriterion("t.updateDate in", values, "updateDate");
            return (Criteria) this;
        }

        public Criteria andUpdateDateNotIn(List<Date> values) {
            addCriterion("t.updateDate not in", values, "updateDate");
            return (Criteria) this;
        }

        public Criteria andUpdateDateBetween(Date value1, Date value2) {
            addCriterion("t.updateDate between", value1, value2, "updateDate");
            return (Criteria) this;
        }

        public Criteria andUpdateDateNotBetween(Date value1, Date value2) {
            addCriterion("t.updateDate not between", value1, value2, "updateDate");
            return (Criteria) this;
        }

        public Criteria andTitleLikeInsensitive(String value) {
            addCriterion("upper(t.title) like", value.toUpperCase(), "title");
            return (Criteria) this;
        }

        public Criteria andMenuKeyLikeInsensitive(String value) {
            addCriterion("upper(t.menuKey) like", value.toUpperCase(), "menuKey");
            return (Criteria) this;
        }

        public Criteria andRemarkLikeInsensitive(String value) {
            addCriterion("upper(t.remark) like", value.toUpperCase(), "remark");
            return (Criteria) this;
        }
    }

    /**
     *
     * @mbg.generated do_not_delete_during_merge Tue Mar 31 14:44:47 CST 2020
     */
    public static class Criteria extends GeneratedCriteria {
        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        private SysMenuExample example;

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        protected Criteria(SysMenuExample example) {
            super();
            this.example = example;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public SysMenuExample example() {
            return this.example;
        }

        /**
         *
         * @mbg.generated Tue Mar 31 14:44:47 CST 2020
         */
        public Criteria andIf(boolean ifAdd, ICriteriaAdd add) {
            if (ifAdd) {
                add.add(this);
            }
            return this;
        }

        public interface ICriteriaAdd {
            /**
             *
             * @mbg.generated Tue Mar 31 14:44:47 CST 2020
             */
            Criteria add(Criteria add);
        }
    }

    /**
     *
     * @mbg.generated Tue Mar 31 14:44:47 CST 2020
     */
    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}